/**
 * 
 */
package jp.ddo.trismegistos.util;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;

/**
 * Propertiesファイル読み込みクラス。
 * 
 * @author y_sugasawa
 * @since 2011/05/29
 */
public class PropertiesFileReader {

	/**
	 * 指定されたパスのプロパティファイルを読み込み、<br>
	 * Map形式にして返す。
	 * 
	 * @param filePath
	 *            ファイルパス
	 * @return プロパティファイル内の情報(key, value)
	 * @throws FileNotFoundException
	 * @throws IOException
	 */
	public static Map<String, String> read(final String filePath)
			throws FileNotFoundException, IOException {

		FileInputStream is = null;
		final Properties prop = new Properties();
		try {
			is = new FileInputStream(filePath);
			prop.load(is);
		} catch (final FileNotFoundException e) {
		} catch (final IOException e) {
		} finally {
			if (is != null) {
				try {
					is.close();
				} catch (final IOException e) {
				}
			}
		}

		final Map<String, String> map = new HashMap<String, String>();
		for (final Object obj : prop.keySet()) {
			final String key = (String) obj;
			map.put(key, prop.getProperty(key));
		}

		return map;
	}
}
